package cn.wolfcode.web.controller;

import cn.wolfcode.domain.City;
import cn.wolfcode.domain.Department;
import cn.wolfcode.domain.Province;
import cn.wolfcode.qo.JsonResult;
import cn.wolfcode.service.IDepartmentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.Date;
import java.util.List;

@Controller
public class JsonController {

    @RequestMapping("/getTime")
    @ResponseBody //加了 这个 就不是跳转的意思 哦  注意
    public JsonResult getTime(){
        Date date = new Date();
        JsonResult jsonResult = new JsonResult(true,date.toLocaleString());
        return jsonResult;

        //有了 注解 , 很简单 . 直接创建对象 使用注解 @ResponseBody  就会自动转成 JSON  .
    }

    @Autowired
    private IDepartmentService departmentService;

    @RequestMapping("/getDepartments")
    @ResponseBody //加了 这个 就不是跳转的意思 哦  注意
    public List<Department> list(){
        List<Department> departments = departmentService.selectAll();
        return  departments;
        //有了 注解 , 很简单 . 直接创建对象 数组也可以 使用注解 @ResponseBody  就会自动转成 JSON  .
    }



    @RequestMapping("/check_username")
    @ResponseBody //加了 这个 就不是跳转的意思 哦  注意
    public JsonResult get(String username){
        if("666".equals(username)){
            return new JsonResult(false,"用户名已被注册");
        }else {
            return new JsonResult(true,"可以注册");
        }
    }


    @RequestMapping("/loginJson")
    @ResponseBody //加了 这个 就不是跳转的意思 哦  注意
    public JsonResult post(String username,String password){
        if("666".equals(username) && "6666".equals(password)){
            return new JsonResult(true,"登陆成功");
        }else {
            return new JsonResult(false,"登录失败");
        }
    }


    @RequestMapping("/provinces")
    @ResponseBody //加了 这个 就不是跳转的意思 哦  注意
    public List<Province> provinces(){
        return Province.getAllProvince();
    }

    @RequestMapping("/cities")
    @ResponseBody //加了 这个 就不是跳转的意思 哦  注意
    public List<City> cities(Long pid){
        return City.getCityByProvinceId(pid);
    }



}
